
package org.xteam.pascal.parser.ast;

import org.xteam.parser.runtime.Span;

public class FieldsAndVariant extends org.xteam.parser.runtime.AstNode {
	
	public org.xteam.parser.runtime.reflect.AstNodeType getNodeType() {
		return PascalAstPackage.INSTANCE.getFieldsAndVariantType();
	}
	
	protected org.xteam.parser.runtime.AstList<Field> fields;
	protected RecordCase variant;
	
	public FieldsAndVariant(Span span) {
		super(span);
	}
	public FieldsAndVariant(Span span, org.xteam.parser.runtime.AstList<Field> fields) {
		super(span);
		this.fields = fields;
	}
	public FieldsAndVariant(Span span, org.xteam.parser.runtime.AstList<Field> fields,RecordCase variant) {
		super(span);
		this.fields = fields;
		this.variant = variant;
	}
	public FieldsAndVariant(Span span, RecordCase variant) {
		super(span);
		this.variant = variant;
	}
	
	
	public org.xteam.parser.runtime.AstList<Field> getFields() {
		return fields;
	}
	
	public void setFields(org.xteam.parser.runtime.AstList<Field> fields) {
		this.fields = fields;
	}
	
	public RecordCase getVariant() {
		return variant;
	}
	
	public void setVariant(RecordCase variant) {
		this.variant = variant;
	}
	

	public void visit(IPascalVisitor visitor) {
		visitor.visitFieldsAndVariant(this);
	}
}
